抱歉,您的浏览器无法访问本站m
本页面需要浏览器支持(启用)JavaScript
了解详情 >

1、环境介绍

我这里全都是https域名+端口号访问方式

minio

这里需要2个域名,我使用的是minio.woshi.xin和memos.minio.woshi.xin两个域名 第一个是给minio使用 第二个是给memos使用。

docker安装的minio,并做反向代理+ssl证书,这里需要注意的是,反向代理的时候,发送域名(host)这里要写$http_host,而不是127.0.0.1要不你存储的时候可能会出错!

memos

docker安装的memos,并做反向代理+ssl证书

2.minio安装操作

在memos0.21版本的时候,s3对象存储(minio)中用的是Path style的URL构建方式,Bucket是在后边拼接,一个域名就能搞定例如我的域名是https://minio.woshi.xin,Bucket是memos,那么在我们请求的时候他是类似https://minio.woshi.xin/memos的格式;

而在memos0.22.0版本升级后,s3对象存储(minio)中用的是 Virtual hosted style的URL构建方式,Bucket会拼接在Endpoint的前边,例如我的域名是https://minio.woshi.xin,Bucket是memos,请求的时候就是https://memos.minio.woshi.xin;

安装好minio后添加上环境变量

MINIO_DOMAIN=minio.woshi.xin(改为你访问minio的网址,完后重启一下)

3.设置minio

进入minio建立存储桶:memos
设置为公开
然后更改区域为CN
建立密钥

4.需要注意

设置完以上的内容,记得把minio的反代端口将19001改成19000。改的时候注意发送域名(host)是$http_host,而不是127.0.0.1

5.设置memos



填完正常使用即可,别忘了改memos中reference 字段的大小

如果还是不会 那么你就跟着我做吧

这个py脚本是memos导出的md文件恢复 !!!只是针对我使用的v 0.21.0版本测试成功

暂时这个版本没有办法直接恢复原始文章的时间!只能手动修改 按ALT

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
import os
import requests
import warnings
from datetime import datetime

# 关闭警告
warnings.filterwarnings("ignore")

# ===================== 你的配置(已填好) =====================
MEMOS_URL = "https://你的memos地址"
# 你的有效Token
ACCESS_TOKEN = "你的memos,token"
MD_DIR = r"D:\ceshi\memos" #脚本地址
# ==============================================================

# 🎯 【调试确认的唯一正确接口】
API_URL = f"{MEMOS_URL}/api/v1/memo"
HEADERS = {
"Authorization": f"Bearer {ACCESS_TOKEN}",
"Content-Type": "application/json"
}

print("=== 开始导入 | 正确接口+文件名时间 ===")
success = 0

for filename in os.listdir(MD_DIR):
if not filename.lower().endswith(".md"):
continue

try:
# 1. 从文件名提取时间(2024-11-04T08_52_00Z.md)
time_str = filename.replace(".md", "").replace("_", ":")
dt = datetime.fromisoformat(time_str.replace("Z", "+00:00"))
timestamp = int(dt.timestamp())

# 2. 读取笔记内容
with open(os.path.join(MD_DIR, filename), "r", encoding="utf-8") as f:
content = f.read()

# 3. 正确参数(官方支持,必显示)
data = {
"content": content,
"createdTs": timestamp, # 自定义时间
"visibility": "PRIVATE"
}

# 4. 发送请求
resp = requests.post(API_URL, json=data, headers=HEADERS, verify=False, timeout=10)

if resp.status_code == 200:
print(f"✅ 成功:{filename} | 时间:{time_str}")
success += 1

except Exception as e:
print(f"❌ 失败:{filename}")

print(f"\n🎉 导入完成!成功导入 {success} 条!")
print("✅ 刷新网页,所有笔记+正确时间全部显示!")
input("按回车退出")

评论